package pe.com.cotelasa.scp.dominio.servicio.impl;

import java.util.Collection;
import javax.inject.Inject;
import org.springframework.stereotype.Service;
import pe.com.cotelasa.common.dao.excepcion.DAOException;
import pe.com.cotelasa.scp.dao.IDAOTipoContacto;
import pe.com.cotelasa.scp.dominio.excepcion.ServiceException;
import pe.com.cotelasa.scp.entidad.TipoContacto;
import pe.com.cotelasa.scp.dominio.service.IServicioTipoContacto;

/**
 *
 * @author usuario
 */
@Service
public class ServicioTipoContactoImpl implements IServicioTipoContacto{
    
    @Inject
    private IDAOTipoContacto daoTipoContacto;
    
    @Override
    public TipoContacto obtenerTipoContactoPorNombre(String nombreTipoContacto) throws ServiceException {
        try {
            return daoTipoContacto.obtenerTipoContactoPorNombre(nombreTipoContacto);
        } catch (DAOException ex) {
            throw new ServiceException(ex.getMessage(), ex);
        }
    }
    
    @Override
    public Collection<TipoContacto> listarTipoContactosActivos() throws ServiceException {
        try {
            return daoTipoContacto.listarActivos(TipoContacto.class);
        } catch (DAOException ex) {
            throw new ServiceException(ex.getMessage(), ex);
        }
    }
    
    @Override
    public TipoContacto conseguirTipoContactoPorId(Integer idTipoContacto) throws ServiceException {
        try {
            return daoTipoContacto.obtenerEntidadPorId(TipoContacto.class, idTipoContacto);
        } catch (DAOException ex) {
            throw new ServiceException(ex.getMessage(), ex);
        }
    }

    
}
